#include <stdio.h>
#include <math.h>
#include <stdbool.h>
bool IsPrime(int num)
{
    for(int i = 2; i < sqrt(num); i++)
    {
        if(num % i ==0)
        {
            return false;//代表函数结束
        }
    }
    return true;
}
 int main()
 {
    // //判断一个数是不是素数
    // int num =12359;
    // //状态标志位???有点不明白
    // int flag = 1; //是素数
    // for(int i = 2; i < num - 1; i++)//？？？为什么是减一
    // {
    //     if(num % i == 0)
    //     {
    //         flag = 0;
    //         printf("非素数,因数为：%d %d!\n", i, num / i);
    //         break;
    //     }
    // } 
    // if(flag == 1)
    // {
    //     printf("是一个素数!\n");
    // }


    // //哥德巴赫猜想：任意一个大于2的偶数炒成两个素数的和
    for(int i = 4; i <= 1000; i += 2)
    {
        int flag = 1;//*????要研究研究

        for(int j = 2; j <= i / 2; j++)
        {
            //j 和j - i都是素数
            if(IsPrime(j) == true && IsPrime(i - j) == true)
            {
                flag = 0;
                printf("%d 可以拆分成%d和%d\n", i, j, i - j);
                break;
            }
        }
        if(flag == 1)
        {
            printf("%d无法拆成两个素数之和", i);
        }
    }
    return 0;
 }
 //素数，不能被除1和本身之外的数除尽